The present invention relates to data center infrastructure, and more particularly, this invention relates to seamlessly communicating between divergent overlay network protocols to unify separate overlay domains.
Network virtualization is an emerging data center and cloud computing trend which aims to virtualize a network as seen by end stations in a way that greatly simplifies network provisioning in multi-tenant environments, as well as traditional environments. One of the more common techniques of achieving network virtualization is to use network overlays, where tunnels are established between servers, edge network switches, and gateways to which end stations connect. The tunnel is actually implemented by encapsulating packets transmitted by a source end station into an overlay header that transports the packet from the source switch to a target switch in user datagram protocol (UDP) transport via an internet protocol (IP)-based network. The overlay header includes an identifier (ID) that uniquely identifies the virtual network. The target switch (tunnel end point) strips off the overlay header encapsulation, UDP transport header, and IP header, and delivers the original packet to the destination end station via conventional network connections. In addition to this tunneling mechanism, the edge switches participate in an address discovery protocol, which may be learning/flooding based, or lookup-based.
An overlay network makes use of a particular overlay protocols, such as Virtual eXtensible Local Area Network (VXLAN), Locator/ID Separation Protocol (LISP), Network Virtualization using Generic Routing Encapsulation (NVGRE), Overlay Transport Virtualization (OTV), Virtual Private LAN Service (VPLS), etc., in order to connect geographically separated Layer-2 (L2) networks using tunnels. These are L2 over Layer-3 (L3) tunnels. L2 packets originated by a virtual machine (VM) in the overlay network and destined to another VM or group of VMs in the same overlay network in another physical location are carried over L3 tunnels.
However, the various divergent overlay protocols have different requirements for implementation, management, and use of the tunnels provided by the overlay protocols. Support must be provided for each overlay protocol's specific requirements, such as different virtualization platforms specific to each overlay protocol, packet-encapsulating protocols specific to each overlay protocol, etc. In addition, each virtualization platform, e.g., VMware's Hypervisor, Microsoft's Hyper-V, KVM, etc., requires separate implementation for each type of overlay network.
There simply is no standard for server virtualization for interoperability across different types of overlay protocols. There are multiple network virtualization mechanisms and they do not comply with each other. Each overlay protocol has a different frame format, different tenant identifier concepts and frame size for storage of the tenant identifier, and VMs across different overlay protocols are not capable of communicating with one another.